package com.anrongtec.zcpt.ua;

import android.content.Context;

import com.anrongtec.zcpt.openapi.model.Staff;


/**
 * 统一认证
 * @author cxy
 *
 */
public class UAManager {
	
//	private GetInfoInterface getInfoInterface;
	
	private UAInterface uaInterface;
	private Context context;
	
	private static UAManager instance;
	
	private Staff mStaff;
	
	/**
	 * 这是当用户身份更变的时候做的操作，应该重新登录及验证
	 */
//	private OnStaffChangeInterface mCallback = new OnStaffChangeInterface.Stub() {
//
//		@Override
//		public void onStaffChanged(Staff staff) throws RemoteException {
//			LogUtil.trace(Log.DEBUG, "UA_staff_changed", staff.getStaffName());
//			uaInterface.onStaffChanged(staff);
//			mStaff = staff;
//			
////			Intent intent = new Intent(context.getApplicationContext(), LoginActivity.class);
////			intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
////			context.startActivity(intent);
//		}
//    };
	
    /**
     * 统一认证服务
     */
//	private ServiceConnection conn = new ServiceConnection() {
//		@Override
//		public void onServiceConnected(ComponentName name, IBinder service) {
//			LogUtil.trace(Log.DEBUG, "UA", "统一认证服务连接成功");
//			getInfoInterface = GetInfoInterface.Stub.asInterface(service);
//			try {
//				getInfoInterface.registerStaffChangeCallback(mCallback);
//				mStaff = getInfoInterface.getCurrentStaff();
//			} catch (RemoteException e) {
//				e.printStackTrace();
//			}
//			uaInterface.onServiceConnected(name, service);
//		}
//		@Override
//		public void onServiceDisconnected(ComponentName name) {
//			if (getInfoInterface != null) {
//				try {
//					getInfoInterface.unregisterStaffChangeCallback(mCallback);
//				} catch (RemoteException e) {
//					e.printStackTrace();
//				}
//				getInfoInterface = null;
//			}
//			uaInterface.onServiceDisconnected(name);
//		}
//	};
	
//	private Intent intent;
//	
//	public static synchronized UAManager getInstance(){
//		if (instance == null) {
//			instance = new UAManager();
//		}
//		return instance;
//	}
//	
//	/**
//	 * 绑定服务
//	 * @param context
//	 */
//	public boolean bindService(Context context, UAInterface uaInterface) {
//		this.context = context;
//		this.uaInterface = uaInterface;
//		
//		// 创建所需绑定服务的Intent
//		intent = new Intent("com.anrongtec.getuaInfo");
//		intent.setPackage("com.anrongtec.ua");
//		// 绑定远程服务
//		boolean bindService = context.bindService(intent, conn, Service.BIND_AUTO_CREATE);
//		return bindService;
//	}
//	
//	/**
//	 * 解绑服务
//	 */
//	public void unbindService(){
//		LogUtil.trace(Log.DEBUG, "UA", "统一认证服务解绑");
//		try {
//			context.unbindService(conn);
//		} catch (Exception e) {
//			e.printStackTrace();
//		}
//	}
//	
//	/**
//	 * 获取设备当前指纹对应的警员信息
//	 * @throws RemoteException 
//	 */
//	public Staff getStaff() throws RemoteException{
//		return mStaff;
//	}
	
}
